package student.aistar.day02.Method;

/**
 * 方法的定义
 */
public class MethodHelloDemo {
    /**
     * mian - 仍然是程序的主入口
     */
    public static void main(String[] args) {
        //类中的方法 - 类里面的成员
        //static - 静态的成员被初始化的时机
        //静态方法什么时候被初始化的?  -  当JVM加载类进内存的时候, 就会立即给所有的静态的成员分配空间以及初始化
        //在这个阶段, 压根就没有对象的概念, 只有类.
        //结论 - 静态的成员属于类, 并且初始化的时机有且1次.
        //属于谁, 就有谁去调用

        MethodHelloDemo.sub();


        //非静态的成员被初始化的时机?
        //当遇到创建对象的语法, 每次创建对象的时候, 都会给各自的非静态成员分配空间以及初始化
        //如果没有创建对象, 就不会初始化这些非静态成员.
        //结论: 非静态成员是属于对象的, 属于谁, 由谁调用.
        MethodHelloDemo methodHelloDemo = new MethodHelloDemo();
        methodHelloDemo.add();

        System.out.println(4294967296D > 123456789D);

        int a = 123456789;
        float b = a;
        System.out.println(b);
    }

    /**
     * 定义了公开的非静态的无返回类型的方法
     */
    public void add(){
        System.out.println("add......");
    }

    /**
     * 定义了公开的静态的五返回类型的方法
     */
    public static void sub(){
        System.out.println("sub....");
    }
}
